package com.tencreat.common.enums.mall;


/****
 * 所有枚举的集合
 */
public interface AllEnum {
    /****
     * 超级验证码
     */
    public String SUPER_CODE = "2017";
    public Long SUPER_UUID = 100000L;

    public enum commentStateEnums {
        /**
         * 未回复
         */
        NO(0),
        /**
         * 已回复
         */
        OK(1);

        commentStateEnums(Integer type) {
            this.type = type;
        }

        private final Integer type;

        public Integer getType() {
            return type;
        }


    }


    public enum SupplierGoods {
        NO(0,"否"),
        YES(1,"是"),
        ING(2,"申请中");

        SupplierGoods(int type,String desc) {
            this.type = type;
            this.desc = desc;
        }

        private final int type;

        private final String  desc;

        public int getType() {
            return type;
        }

        /**
         * 单个枚举的展示
         */
        @Override
        public String toString() {
            return type + "-" + desc;
        }
    }

    public enum StoreGoods {
        NO(0,"否"),
        YES(1,"是"),
        ING(2,"申请中");

        StoreGoods(int type,String desc) {
            this.type = type;
            this.desc = desc;
        }

        private final int type;

        private final String  desc;

        public int getType() {
            return type;
        }

        /**
         * 单个枚举的展示
         */
        @Override
        public String toString() {
            return type + "-" + desc;
        }
    }

    /****
     *   是否删除
     */
    public enum DelFlagEnums {
        /**
         * 否
         */
        NO("0"),
        /**
         * 是
         */
        YES("2");

        DelFlagEnums(String type) {
            this.type = type;
        }

        private final String type;

        public String getType() {
            return type;
        }

    }
    /*****
     * 会员类型
     */
    public enum memberType {
        /**
         * 年会员 1 年
         */
        YEAR(1),
        /**
         * 永久会员 60 年
         */
        PERMANENT(60);

        memberType(Integer type) {
            this.type = type;
        }

        private final Integer type;

        public Integer getType() {
            return type;
        }


    }

    /*****
     * 优惠券使用状态
     */
    public enum couponType {
        /****
         * 未使用
         */
        EXISTENCE(0L),
        /**
         * 已使用
         */
        USED(1L);

        couponType(Long type) {
            this.type = type;
        }

        private final Long type;

        public Long getType() {
            return type;
        }


    }

    public enum FinanceStatus {

        INCOME_WAIT(1,1,"收入-待结算货款"),

        EXPENDITURE_WAIT(2,1,"支出-待结算货款"),

        INCOME_OK(3,2,"收入-可用货款"),

        EXPENDITURE_OK(4,2,"支出-可用货款");

        FinanceStatus(int type,int paymentType,String desc) {
            this.type = type;
            this.paymentType = paymentType;
            this.desc = desc;
        }

        private final int type;

        private final int paymentType;

        private final String  desc;

        public int getType() {
            return type;
        }
        public int getPaymentType() {
            return paymentType;
        }

        /**
         * 单个枚举的展示
         */
        @Override
        public String toString() {
            return type + "-" + desc;
        }
    }

    public enum FinanceOperation {
        ORDER(1,"订单"),
        ORDER_OK(2,"订单完成"),
        WITHDRAWAL(3,"提现"),
        WITHDRAWAL_REFUSE(4,"提现拒绝"),
        REFUND(5,"退款");

        FinanceOperation(int type,String desc) {
            this.type = type;
            this.desc = desc;
        }

        private final int type;

        private final String  desc;

        public int getType() {
            return type;
        }

        /**
         * 单个枚举的展示
         */
        @Override
        public String toString() {
            return type + "-" + desc;
        }
    }

    /****
     *   balanceChange 表  type 枚举
     */
    public enum BalanceChangeTypeEnums {
        /**
         * 收入
         */
        INCOME("1"),
        /**
         * 支出
         */
        EXPENDITURE("2");

        BalanceChangeTypeEnums(String type) {
            this.type = type;
        }

        private final String type;

        public String getType() {
            return type;
        }


    }
    /** 1
     2 前端充值
     3 后端充值
     4 订单支出
     5 管理支出
     6 用户提现
     7 供应商提现 */

    public enum FinancialManageEnum {
        ORDER_IN(1,"订单收入"),
        APP_TOP(2,"前端充值"),
        PC_TOP(3,"后端充值"),
        ORDER_SPENDING(4,"订单支出"),
        MANAGE_SPENDING(5,"管理支出"),
        USER_WITHDRAWAL(6,"用户提现"),
        SUPPLIER_WITHDRAWAL(7,"供应商提现"),
        STORE_WITHDRAWAL(8,"店铺提现");

        FinancialManageEnum(int type,String desc) {
            this.type = type;
            this.desc = desc;
        }

        private final int type;

        private final String  desc;

        public int getType() {
            return type;
        }

        /**
         * 单个枚举的展示
         */
        @Override
        public String toString() {
            return type + "-" + desc;
        }
    }

    public  enum  EventEnum{
        YES(0,"是"),
        NO(1,"否");
        EventEnum(int type,String desc) {
            this.type = type;
            this.desc = desc;
        }

        private final int type;

        private final String  desc;

        public int getType() {
            return type;
        }


    }
}
